package cn.xd.itstack.springframework.beans.factory.config;

import cn.xd.itstack.springframework.beans.factory.HierarchicalBeanFactory;
import cn.xd.itstack.springframework.utils.StringValueResolver;


/**
 * @Classname ConfigurableBeanFactory
 * @Description TODO
 * @Date 2022/5/17 下午6:16
 * @Created by lvxiaodong
 */
public interface ConfigurableBeanFactory extends HierarchicalBeanFactory,SingletonBeanRegistry {
    String SCOPE_SINGLETON = "singleton";

    String SCOPE_PROTOTYPE = "prototype";

    void addBeanPostProcessor(BeanPostProcessor beanPostProcessor);

    /**
     * 销毁单利对象
     */
    void destroySingletons();


    void addEmbeddedValueResolver(StringValueResolver valueResolver);


    String resolveEmbeddedValue(String value);


}
